package com.dysm.bytes;

public class ByteTest {

    public static void main(String[] args) {
        byte a , b;
        a = 100;
        b = 127;
        a += b;
        System.out.println(a); // -29
        // 相加会发生溢出，最高位为符号位，0代表正，1代表负，当最高位为1时，负数的地位是以补码的形式存储
        // 补码 = （原码 + 1）取反 ->  原码 = （补码 - 1）取反
        // 01100100 (100)
        // 01111111 (127) +
        // 11100011  -> 补码
        // 10011101  -> （补码 - 1）取反
        // -29
    }
}
